<doc>
<contents_area>
<div id="Content" style="padding: 5px;">
<p>The feature matrix can be seen below. You can check details for each feature by following the correspondent link </p>
<div class='table-wrap'>
<table class='confluenceTable'><tbody>
<tr>
<th class='confluenceTh'> Feature List </th>
<th class='confluenceTh'> Keybinding </th>
<th class='confluenceTh'> Link </th>
</tr>
<tr>
<th class='confluenceTh'> General </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'>&nbsp;</th>
</tr>
<tr>
<td class='confluenceTd'> Python integration </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Jython integration </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> IronPython integration </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Syntax highlighting </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Wizards (new project, src folder, module, package) </td>
<td class='confluenceTd'> Ctrl+N </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Script PyDev with Jython </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_articles_scripting.html" title="PyDev Jython Scripting">article</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Unittest integration </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_adv_pyunit.html" title="PyDev Unittest integration">Link</a> </td>
</tr>
<tr>
<th class='confluenceTh'> Google App Engine </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'> <a href="http://pydev.blogspot.com/2009/05/pydev-146-released-google-app-engine-on.html" class="external-link" rel="nofollow">Video</a>&nbsp;&nbsp;/&nbsp;&nbsp;<a href="http://pydev.blogspot.com/2009/05/testing-on-pydev-146-google-app-engine.html" class="external-link" rel="nofollow">Link</a> </th>
</tr>
<tr>
<td class='confluenceTd'> Wizard for new Project </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Launching </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Uploading and doing other actions </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<th class='confluenceTh'> Django </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'> <a href="manual_adv_django.html" title="PyDev Django">Link</a> </th>
</tr>
<tr>
<td class='confluenceTd'> Wizard for new Project </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Launching </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Interactive shell </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> manage.py commands with context menu </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> custom manage.py commands </td>
<td class='confluenceTd'> ctrl+2+dj+optional_command </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<th class='confluenceTh'> Launching </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'> <a href="manual_adv_launch.html" title="PyDev Launching">Link</a> </th>
</tr>
<tr>
<td class='confluenceTd'> Regular </td>
<td class='confluenceTd'> F9 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Unittest </td>
<td class='confluenceTd'> Ctrl+F9 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Relaunch last in Regular </td>
<td class='confluenceTd'> Ctrl+F11 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Relaunch last in Debug </td>
<td class='confluenceTd'> F11 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<th class='confluenceTh'> Interactive Console </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'> <a href="manual_adv_interactive_console.html" title="PyDev Interactive Console">Link</a> </th>
</tr>
<tr>
<td class='confluenceTd'> Interactive console shortcuts </td>
<td class='confluenceTd'> Ctrl+Alt+Enter </td>
<td class='confluenceTd'> <a href="manual_adv_interactive_console.html" title="PyDev Interactive Console">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Code completion </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Auto-import </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<th class='confluenceTh'> Editor </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'> <a href="manual_adv_editor_prefs.html" title="PyDev Editor preferences">Link</a> </th>
</tr>
<tr>
<td class='confluenceTd'> Matching brackets highlighted </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Selection for tabs or spaces (or adapt to file) </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Block indent (and dedent) </td>
<td class='confluenceTd'> Tab / Shift-Tab </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Smart indent (and dedent) </td>
<td class='confluenceTd'> Enter / Backspace </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Code folding </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Code folding: collapse all 1 level </td>
<td class='confluenceTd'> Ctrl+9 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Code folding: expand all 1 level </td>
<td class='confluenceTd'> Ctrl+0 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Code folding: collapse current </td>
<td class='confluenceTd'> Ctrl+&#45; </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Code folding: expand current </td>
<td class='confluenceTd'> Ctrl+&#43; </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> 'Quick' code-formatter </td>
<td class='confluenceTd'> Ctrl+Shift+F </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Sort selection or imports if 'no selection' </td>
<td class='confluenceTd'> Ctrl+Shift+O </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Comment and uncomment selection </td>
<td class='confluenceTd'> Ctrl+3 / Ctrl+Shift+3 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Comment blocks in 2 styles </td>
<td class='confluenceTd'> Ctrl+4 / Ctrl+Shift+4 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Auto-edit: close parenthesis </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Auto-edit: add 'self' in class methods </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Auto-edit: add 'import' in import lines </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<th class='confluenceTh'> Search </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'>&nbsp;</th>
</tr>
<tr>
<td class='confluenceTd'> Find References </td>
<td class='confluenceTd'> Ctrl+Shift+G </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<th class='confluenceTh'> Refactoring </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'> <a href="manual_adv_refactoring.html" title="PyDev Refactoring">Link</a> </th>
</tr>
<tr>
<td class='confluenceTd'> Rename </td>
<td class='confluenceTd'> Shift+Alt+R </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Extract method </td>
<td class='confluenceTd'> Shift+Alt+M </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Extract local variable </td>
<td class='confluenceTd'> Shift+Alt+L </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Inline local variable </td>
<td class='confluenceTd'> Shift+Alt+I </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<th class='confluenceTh'> Editor Content Assistants </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'> <a href="manual_adv_assistants.html" title="PyDev Content Assistants">Link</a> </th>
</tr>
<tr>
<td class='confluenceTd'> Assign result to attribute or local </td>
<td class='confluenceTd'> Ctrl+1 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Assign parameters to attributes </td>
<td class='confluenceTd'> Ctrl+1 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Surround code with try..catch / finally </td>
<td class='confluenceTd'> Ctrl+1 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Create docstring </td>
<td class='confluenceTd'> Ctrl+1 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Move import to global scope </td>
<td class='confluenceTd'> Ctrl+1 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Auto-Import 'quick-fix' for undefined variables </td>
<td class='confluenceTd'> Ctrl+1 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Ignore error 'quick-fix' </td>
<td class='confluenceTd'> Ctrl+1 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Ignore file in code-analysis </td>
<td class='confluenceTd'> Ctrl+1 </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Mark Occurrences </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_adv_markoccurrences.html" title="PyDev Mark Occurrences">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Rename Occurrences </td>
<td class='confluenceTd'> Ctrl+2+R </td>
<td class='confluenceTd'> <a href="manual_adv_renameoccurrences.html" title="PyDev Rename Occurrences">Link</a> </td>
</tr>
<tr>
<th class='confluenceTh'> Reporting </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'>&nbsp;</th>
</tr>
<tr>
<td class='confluenceTd'> Syntax errors reported </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Hovering shows error description </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Code coverage </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_adv_coverage.html" title="PyDev Code Coverage">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> TODO Tasks </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_adv_tasks.html" title="PyDev Tasks">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Code-analysis (real time or on save) </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_adv_code_analysis.html" title="PyDev Code Analysis">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> PyLint (only on save) </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_adv_pylint.html" title="PyDev PyLint">Link</a> </td>
</tr>
<tr>
<th class='confluenceTh'> Navigation </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'>&nbsp; <a href="manual_101_navigate_code.html" title="Navigate Code in PyDev">Link</a></th>
</tr>
<tr>
<td class='confluenceTd'> Hyperlink stack-traces in the console </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Outline view </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Quick Outline </td>
<td class='confluenceTd'> Ctrl+O </td>
<td class='confluenceTd'> <a href="manual_adv_quick_outline.html" title="PyDev Quick Outline">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Quick Open Definition Outline </td>
<td class='confluenceTd'> Ctrl+Shift+T </td>
<td class='confluenceTd'> <a href="manual_adv_open_decl_quick.html" title="PyDev Open Declaration Quick Outline">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Hierarchy View </td>
<td class='confluenceTd'> F4 </td>
<td class='confluenceTd'> <a href="manual_adv_hierarchy_view.html" title="PyDev Hierachy View">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Go to definition </td>
<td class='confluenceTd'> F3 </td>
<td class='confluenceTd'> <a href="manual_adv_gotodef.html" title="PyDev Go to Definition">Link</a> </td>
</tr>
<tr>
<th class='confluenceTh'> Code completion </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'>&nbsp;</th>
</tr>
<tr>
<td class='confluenceTd'> Type-hints for Code completion </td>
<td class='confluenceTd'> &nbsp; </td>
<td class='confluenceTd'> <a href="manual_adv_type_hints.html" title="Type-hints for Code completion">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Templates Code completion </td>
<td class='confluenceTd'> Ctrl+Space </td>
<td class='confluenceTd'> <a href="manual_adv_compltemp.html" title="PyDev Templates completion">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Context-sensitive Code Completion </td>
<td class='confluenceTd'> Ctrl+Space </td>
<td class='confluenceTd'> <a href="manual_adv_complctx.html" title="PyDev Context-sensitive completions">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Context-insensitive Code Completion with auto-import </td>
<td class='confluenceTd'> Ctrl+Space </td>
<td class='confluenceTd'> <a href="manual_adv_complnoctx.html" title="PyDev Context-insensitive completions">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Auto-suggest keywords and other customizable tokens </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_adv_complauto.html" title="PyDev Auto-suggest keywords">Link</a> </td>
</tr>
<tr>
<th class='confluenceTh'> Debugger </th>
<th class='confluenceTh'>&nbsp;</th>
<th class='confluenceTh'> <a href="manual_adv_debugger.html" title="PyDev Debugger">Link</a> </th>
</tr>
<tr>
<td class='confluenceTd'> Python and Jython support </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Expression Watch </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Add Breakpoints </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Conditional Breakpoints </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Step in/out/over/resume </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Multiple threads </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Variable display </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> Debug 'server' for remote debugging </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_adv_remote_debugger.html" title="PyDev Remote Debugger">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Debug console </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_adv_debug_console.html" title="PyDev Debug Console">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Debugger auto reload </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_adv_debugger_auto_reload.html" title="Debugger Auto Reload">Link</a> </td>
</tr>
<tr>
<td class='confluenceTd'> Find Referrers in Debugger </td>
<td class='confluenceTd'>&nbsp;</td>
<td class='confluenceTd'> <a href="manual_adv_debugger_find_referrers.html" title="Find Referrers in Debugger">Link</a> </td>
</tr>
</tbody></table>
</div>


<p> <b>Notes:</b></p>

<ul>
	<li><b>PyLint</b>:PyLint is provided by logilab, and does code-analysis in python programs.    It is called when a file is saved. It is written in python itself and called as an external program.</li>
</ul>


<p>Many other features provided by Eclipse itself are not added to the list, but are available either in the Eclipse platform or in other third-party plugins.  Below is a 'quick-list' of 'reccommendations' that may be worth mentioning...</p>
<div class='table-wrap'>
<table class='confluenceTable'><tbody>
<tr>
<th class='confluenceTh'> Plug-in features / reccomendations </th>
<th class='confluenceTh'> Plug-in </th>
</tr>
<tr>
<td class='confluenceTd'> Text code-completion (also known as emacs-style completion) </td>
<td class='confluenceTd'> Alt+/ in Eclipse </td>
</tr>
<tr>
<td class='confluenceTd'> Rectangular editing </td>
<td class='confluenceTd'> Ctrl+Shift+A in Eclipse 3.5 </td>
</tr>
<tr>
<td class='confluenceTd'> Open selected folder with explorer from within Eclipse </td>
<td class='confluenceTd'> <a href="http://basti1302.github.io/startexplorer/" class="external-link" rel="nofollow">StartExplorer</a> </td>
</tr>
<tr>
<td class='confluenceTd'> git, mercurial, cvs, subversion and many other 'SCM systems' are available </td>
<td class='confluenceTd'> Search the net for what you want </td>
</tr>
</tbody></table>
</div>

</div>
</contents_area>
</doc>